package com.skiving.cloud.admin.entity;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.Table;
import java.io.Serializable;
import java.time.LocalDateTime;

import java.io.Serial;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 角色 实体类。
 *
 * @author skivingcloud
 * @since 2025-03-08
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("角色")
@Table("sys_role")
public class SysRole implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @Id
    @ApiModelProperty("")
    private String id;

    /**
     * 角色名称
     */
    @ApiModelProperty("角色名称")
    private String roleName;

    /**
     * 备注
     */
    @ApiModelProperty("备注")
    private String remark;

    /**
     * 创建者ID
     */
    @ApiModelProperty("创建者ID")
    private String createUserId;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;

    /**
     * 修改人
     */
    @ApiModelProperty("修改人")
    private String modUserId;

    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    private LocalDateTime modTime;

    /**
     * 租户
     */
    @ApiModelProperty("租户")
    private String tenantId;

    /**
     * 租户名称
     */
    @Column(ignore = true)
    private String tenantName;

    @Column(ignore = true)
    private String[] resId;
}
